#!/usr/bin/env python
PACKAGE = "trajectory_tracker"

from dynamic_reconfigure.parameter_generator_catkin import *

gen = ParameterGenerator()

gen.add("look_forward", double_t, 0, "", 0.5, 0.0, 100.0)
gen.add("curv_forward", double_t, 0, "", 0.5, 0.0, 100.0)
gen.add("k_dist", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("k_ang", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("k_avel", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("gain_at_vel", double_t, 0, "", 0.0, 0.0, 100.0)
gen.add("dist_lim", double_t, 0, "", 0.5, 0.0, 100.0)
gen.add("dist_stop", double_t, 0, "", 2.0, 0.0, 100.0)
gen.add("rotate_ang", double_t, 0, "", 0.78539816339, 0.0, 3.1415)
gen.add("max_vel", double_t, 0, "", 0.5, 0.0, 100.0)
gen.add("max_angvel", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("max_acc", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("max_angacc", double_t, 0, "", 2.0, 0.0, 100.0)
gen.add("acc_toc_factor", double_t, 0, "", 0.9, 0.0, 1.0)
gen.add("angacc_toc_factor", double_t, 0, "", 0.9, 0.0, 1.0)
gen.add("path_step", int_t, 0, "", 1, 1, 100)
gen.add("goal_tolerance_dist", double_t, 0, "", 0.2, 0.0, 100.0)
gen.add("goal_tolerance_ang", double_t, 0, "", 0.1, 0.0, 100.0)
gen.add("stop_tolerance_dist", double_t, 0, "", 0.1, 0.0, 100.0)
gen.add("stop_tolerance_ang", double_t, 0, "", 0.05, 0.0, 100.0)
gen.add("no_position_control_dist", double_t, 0, "", 0.0, 0.0, 100.0)
gen.add("min_tracking_path", double_t, 0, "", 0.0, 0.0, 100.0)
gen.add("allow_backward", bool_t, 0, "", True)
gen.add("limit_vel_by_avel", bool_t, 0, "", False)
gen.add("check_old_path", bool_t, 0, "", False)
gen.add("epsilon", double_t, 0, "", 0.001, 0.0, 10.0)
gen.add("use_time_optimal_control", bool_t, 0, "", True)
gen.add("time_optimal_control_future_gain", double_t, 0, "", 1.5, 0.0, 100.0)
gen.add("k_ang_rotation", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("k_avel_rotation", double_t, 0, "", 1.0, 0.0, 100.0)
gen.add("goal_tolerance_lin_vel", double_t, 0, "", 0.0, 0.0, 100.0)
gen.add("goal_tolerance_ang_vel", double_t, 0, "", 0.0, 0.0, 100.0)

exit(gen.generate(PACKAGE, "trajectory_tracker", "TrajectoryTracker"))
